package cn.michael.dev.data.structure.linked.list;

import cn.michael.dev.entity.ListNode;

/**
 * Created by hufenggang on 2021/9/1.
 *
 * 存在一个按升序排列的链表，给你这个链表的头节点 head ，请你删除链表中所有存在数字重复情况的节点，只保留原始链表中 没有重复出现 的数字。
 */
public class Leetcode82 {

    public ListNode deleteDuplicates(ListNode head) {

        if (head == null || head.next == null) {
            return head;
        }

        ListNode currNode = head;
        ListNode firstNode = currNode.next;
        int value = firstNode.val;

        while (firstNode.next != null) {
            if (firstNode.next.val == value) {
                currNode.next = firstNode.next.next;
                firstNode = currNode.next;
                value = firstNode.val;
            } else {
                firstNode = firstNode.next;
                currNode = currNode.next;
            }
        }

        return head;
    }
}
